# -*- coding:utf-8 -*-
# author:hp
# datetime:18-6-22 上午9:21
# software: PyCharm


class Project:
    def __init__(self, name, arriveTime, workTime):
        self.name = name
        self.arriveTime = arriveTime
        self.workTime = workTime
        self.start = 0
        """
        arrivetime到达时间
        worktime要求服务时间
        """


    def getResponseRatio(self, start):
        """
        :param start: 开始工作时间 
        :return: 返回响应比
        """
        return round((start - self.arriveTime + self.workTime) / self.workTime, 2)


    def __repr__(self):
        return "进程：{}，到达时间：{}， 工作时间：{}， 开始时间：{}， 结束时间：{}， 周转时间：{}, 带权周转时间：{}".format(self.name, self.arriveTime, self.workTime, self.start, self.start + self.workTime, self.start + self.workTime - self.arriveTime, self.getResponseRatio(self.start))

    def __str__(self):
        # 初始化时使用，如果都是用repr，响应比会提前计算，会出现负数 这是不希望的
        return "进程：{}，到达时间：{}， 工作时间：{}".format(self.name, self.arriveTime, self.workTime)
